Bell Labs Layered Space-Time (“BLAST”) is a prior art technique for sending multiple data streams from a single transmitting device and may use successive cancellation to recover the transmitted symbols. Each data stream is transmitted with the same average power, and in order to perform successive cancellation, the optimal cancellation order of the data streams at the receiver needs to be determined. The prior art determination of the optimal ordering requires either channel knowledge at the transmitter to solve the ordering problem or a computationally complex algorithm in the receiver to determine the optimal ordering. Having channel knowledge at the transmitter requires a large amount of feedback in mobile channels, and transmitting each data stream with the same power requires a successive cancellation algorithm at the receiver to determine the ordering of the data streams. The consequence of both solutions is a burdensome, complex computation being performed by the transmitter or receiver, respectively.
Thus, there is a need for a new and unique data stream transmission method.